﻿Imports Commander_Wars.Spieletools
<Serializable()> Public Class KONapoleon
    Inherits ObjektKO
    Public Sub New(ByVal Spieler As Integer)
        MyBase.New(Spieler, KIGabeEinsatzstellen.RundenAnfang)
        StartwerteLaden()
    End Sub
    Public Sub New(ByVal Spieler As Integer, ByVal Gabefüllstand As Integer, ByVal Gabenart As Gabemodi, ByVal neuSternkosten As Integer)
        MyBase.New(Spieler, Gabefüllstand, Gabenart, neuSternkosten, KIGabeEinsatzstellen.RundenAnfang)
        StartwerteLaden()
    End Sub

    Private Sub StartwerteLaden()
        KOID = "NAPOLEON"
        Armee = Armeen.MA.ToString
        Musik = "Napoleon"
        Bild = GetBildID()
        Select Case My.Settings.CommanderWarsGameMoodus
            Case CommanderWarsGameModi.AdvanceWars
                Sternkosten = 1000
                Gabekosten = 0
                SpezialgabeKosten = 4
                Gaben = Objektverwalter.KOS(Bild).KOBeschreibung.Gaben
                Gaben(1) = Gaben(0)
            Case CommanderWarsGameModi.AdvanceWars2
                Sternkosten = 1000
                Gabekosten = 4
                SpezialgabeKosten = 5
                Gaben = Objektverwalter.KOS(Bild).KOBeschreibung.Gaben
            Case CommanderWarsGameModi.AdvanceWarsDS
                Sternkosten = 1000
                Gabekosten = 4
                SpezialgabeKosten = 5
                Gaben = Objektverwalter.KOS(Bild).KOBeschreibung.Gaben
            Case CommanderWarsGameModi.AdvanceWarsDC
                Sternkosten = 1000
                Gabekosten = 0
                SpezialgabeKosten = 6
                Gaben = Objektverwalter.KOS(Bild).KOBeschreibung.Gaben
                KORange = 3
            Case CommanderWarsGameModi.CommanderWars2
                Sternkosten = 1000
                Gabekosten = 4
                SpezialgabeKosten = 5
                Gaben = Objektverwalter.KOS(Bild).KOBeschreibung.Gaben
                KORange = 3
            Case Else
                Sternkosten = 1000
                Gabekosten = 4
                SpezialgabeKosten = 5
                Gaben = Objektverwalter.KOS(Bild).KOBeschreibung.Gaben
        End Select
        KOname = Objektverwalter.KOS(Bild).KOBeschreibung.Name
        KOLaden()
    End Sub

    Public Overrides Sub KOLaden()
        Zusatzdeffensive.X = 10
        Zusatzdeffensive.Y = 0
        DeffensivStärke = New Feuerkrafttabelle120
        Maximalschaden = -1
        LandschaftsStärke = 0
        Array.Resize(LandschaftsUntergrund, 0)
        Kampfverstärker = 0
        If My.Settings.CommanderWarsGameMoodus = CommanderWarsGameModi.AdvanceWarsDC Then
            'Dafür sinkt die Feuerkraft aber drastisch
            WetterReichweitenbonus(0) = 0
        End If
    End Sub

    Public Overrides Sub Gabeeinsetzen(Optional ByVal OhneFunktion As Boolean = False)
        Maximalschaden = 0.5
        If OhneFunktion = False Then
            AnimationEigene("OZZYGABE", 2)
        End If
        GabeEingesetzt()
    End Sub

    Public Overrides Sub SpezialGabeeinsetzen(Optional ByVal OhneFunktion As Boolean = False)
        If My.Settings.CommanderWarsGameMoodus = CommanderWarsGameModi.AdvanceWars Then
            Maximalschaden = 0.5
            If OhneFunktion = False Then
                AnimationEigene("OZZYGABE", 2)
            End If
            GabeEingesetzt()
        Else
            DeffensivStärke = New Feuerkrafttabelle130
            Zusatzdeffensive = New Point(15, 10)
            Kampfverstärker = 4
            LandschaftsUntergrund = New String() {"Deckung"}
            LandschaftsStärke = 10
            If OhneFunktion = False Then
                AnimationEigene("SPEZIALGABE", 2)
            End If
            GabeEingesetzt()
        End If
    End Sub

    Public Overrides Sub KOFrame()
        'Wir machen nichts
    End Sub


End Class

<Serializable()> Public Class KOBeschreibungNapoleon
    Inherits ObjektKOBeschreibung
    Public Sub New()
        Name = "Napoleon"
        Fein = "Sudoku"
        Nein = "Horrorfilme"
        Beschreibung = New String() {"Ein von Kat erfundener Roboter, der durch", "einen Stromschlag mutierte. Hält sich für den", "unbesiegbaren Feldherrn Napoleon."}
        Stil = New String() {"Seine Truppen haben eine stark", "erhöhte Deffensive."}
        Gabebeschreibung = New String() {"Seine Truppen können nur die hälfte ihrer", "TP Schaden nehmen."}
        SpezialgabeBeschreibung = New String() {"Seine Truppen kämpfen so als wären sie 4 TP", "stärker und erhalten einen Feuerboost je", "nach Deckung."}
        GabeKosten = 4
        Spezialgabekosten = 4
        Gaben = New String() {"Schutzschild", "Letzter Widerstand"}
        Synergie = New Decimal() {1, 1, 0.5#, -1, 2}
        KONamen = New String() {"EPOCH", "KAT", "GRAVES", "CANDY", "ROBOSTURM"}
        Doppelgabenamen = New String() {"Roboterinvasion", "Hirn und Muskeln", "Doppel-Gabe", "Doppel-Gabe", "Überlegene Macht"}
        Gabesätze = New String() {"Du und deine Armee! Ich habe mehr Soldaten als du denkst!" _
                                  , "Größe hat keine Bedeutung in einem Kampf." _
                                  , "Ich kann nicht angegriffen werden. Es wäre falsch diese Tatsache aus zu probieren." _
                                  , "Versuch was du willst meine Truppen sterben nicht." _
                                  , "Völkerschlacht bei Leipzig? Von was redest du?" _
                                  , "Ich muss mir keine Sorgen machen, aber... du solltest es."}
        Siegsätze = New String() {"Napoleon hat nie verloren." _
                                , "Warum warst du so überzeugt? Ein Sieg wird errungen nicht gekauft." _
                                , "Die Metall Army wird weiter kämpfen."}
        Tauschsätze = New String() {"Unsere Verluste sind unakzeptabel. Ich werde das beheben." _
                                    , "Verschwinde du Versager. Ich kümmere mich darum!"}
        Doppelgabesätze = New DoppelGabesatz() {New DoppelGabesatz("NAPOLEON", "EPOCH", "Wir werden Russland erobern.", "Error. Napoleon verlor in Russland.") _
                                              , New DoppelGabesatz("NAPOLEON", "EPOCH", "Angriff! An alle Roboter taktische Verteidigung beenden.", "Error! File not found! Befehl kann nicht ausgeführt werden.") _
                                              , New DoppelGabesatz("NAPOLEON", "KAT", "Ihr könnt so viel vernichten wie ihr wollt. Es gibt immer Nachschub!", "Das macht keinen Spaß! So kann ich nicht gewinnen!") _
                                              , New DoppelGabesatz("NAPOLEON", "KAT", "Ich bin der Herrscher habt ihr ein Problem damit!", "Hi! Hi! Er funktioniert.")}
    End Sub
End Class
